﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ObviousCode.Aspect.PluginLibrary.Interfaces;
using ObviousCode.Common.Utils.Library;

namespace ObviousCode.Aspect.PluginLibrary.Descriptors
{
    public class SurfaceRelationshipDescriptor
    {        
        public string Key { get; private set; }

        public string Description { get; set; }
        public IUIRelationshipTheme Theme { get; set; }

        public Func<Pair<IAspectItem, IAspectItem>, object[], IAspectRelationship> Builder { get; set; }

        public SurfaceRelationshipDescriptor(string key, string description, IUIRelationshipTheme theme, Func<Pair<IAspectItem, IAspectItem>, object[], IAspectRelationship> builder)
        {
            Key = key;
            Description = description;           
            Theme = theme;
            Builder = builder;
        }
    }
}
